package com.backend.demo.service;

import java.util.List;
import java.util.Map;

import com.backend.demo.entities.Menu;
import com.backend.demo.page.PageBean;

/**
 * 菜单功能
 * @author Administrator
 *
 */
public interface IMenuService {
	
	/**
	 * 查询所有菜单信息
	 * @return
	 */
	public List<Menu> getAllMenu();
	
	/**
	 * 分页查询
	 * @return
	 */
	public PageBean<Menu> getAllMenusByPage();
	
	/**
	 * 根据查询条件查询菜单列表
	 * @param menu
	 * @return
	 */
	public List<Menu> getMenuByCondition(Menu menu);
	
	/**
	 * 根据菜单ID查询菜单信息
	 * @param menuID
	 * @return
	 */
	public Menu getMenuById(long menuID);
	
	/**
	 * 查询父菜单
	 * @return
	 */
	public List<Menu> getParentMenus();
	
	/**
	 * 查询子菜单
	 * @return
	 */
	public Map<Long,List<Menu>> menusMap();
	
	/**
	 * 新增菜单
	 * @param menu
	 * @return
	 */
	public int addMenu(Menu menu);
	
	/**
	 * 更新菜单
	 * @param menu
	 * @return
	 */
	public int updateMenu(Menu menu);
	
	/**
	 * 删除菜单
	 * @param menuID
	 * @return
	 */
	public int deleteMenu(long menuID);

}
